/*
*	Ivan Concua 12352
*	Roberto Andrino 12413
*	Algoritmos y estructuras de datos
*	List.java
*	List es la clase que debe ser implementada por todas
*	las clases que sean una lista. Como un Stack puede ser 
*	una lista, List tiene los mismos metodos de Stack. 
*	List es parte del ADT para las listas
*/

public interface List<G> extends Stack<G>
{
   public void push(G item);
   // pre: 
   // post: Se agrega un item a la lista
   // sera el primer item en salir por un pop si no hay otro push
   
   public G pop();
   // pre: La lista no esta vacia
   // post: Se remueve y se regresa el ultimo item en haber sido pushed a la lista
   
   public G peek();
   // pre: La lista no esta vacia
   // post: Se regresa el ultimo item en haber sido pushed a la lista
   
   public int size();
   // pre:
   // post: regresa la cantidad de elementos en la lista
   
   public boolean empty();
   // post: regresa true si la lista esta vacia
}
